在早期开发的实验室中,我们常常陷入 演示陷阱。这是一种认知上的诱惑,其中 最小可行产品(MVP) 表现完美无瑕,因为它是在‘理想’示例上进行测试的——这些查询中,语言模型的内部权重与检索到的上下文恰好在罕见的巧合时刻达成一致。
成功分布:狭窄的成功峰值与广泛的失败现实之间的对比。
从MVP迈向一个 可用系统,我们必须接受一个严酷的事实: RAG并非让聊天机器人听起来更聪明的技巧。 它是一种严谨的架构设计方法,用于负责任且可预测地将非确定性语言模型与外部知识源连接起来。一个可靠的系统,并不体现在其能否总结一份完美的PDF,而体现在它能否处理扫描文档的混乱、条款冲突以及真实世界中复杂多样的长尾问题。
工程责任
- 首要来源: 将检索流程视为事实的首要来源,而将大语言模型(LLM)作为次要处理单元。
- 统计验证: 从基于个别案例的验证(“试过一次就成功了!”)转向对数千个边缘情况的统计验证。
- 优雅降级: 为证据缺失的情况进行设计。一个会说“我不知道”的系统,远比一个基于“幻觉化”权重猜测的系统更有价值。